//
//  ViewController.m
//  02-UIViewController
//
//  Created by GivenBmli on 16/7/15.
//  Copyright © 2016年 GivenBmli. All rights reserved.
//

#import "ViewController.h"
#import "PresentViewController.h"
@interface ViewController ()
@property (nonatomic , retain)UIView *subView;
@end

@implementation ViewController
// ViewController的生命
//初始化方法
- (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
//        不要在这个方法中, 去加载视图
//        在这个方法中去初始化一些数据相关内容
        
        
        
    }
    return self;
}

//loadView 加载UIViewConrtoller 中的 view
//UINavigationController
//UITableViewController在loadView中给重写赋值了
- (void)loadView{
    [super loadView];
    NSLog(@"loadView");
//    改变self.view
}

// view已经加载// 所有自定义视图的创建
- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor redColor];
    NSLog(@"viewDidLoad");
//    模态
    
//    self.view = nil;
//    NSLog(@"%@", self.view);
}

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
    PresentViewController *present =[[PresentViewController alloc]init];
//     模态 动画效果
//    UIModalTransitionStyleCrossDissolve 默认从上到下
//    UIModalTransitionStyleFlipHorizontal 左右翻转
//    UIModalTransitionStylePartialCurl 翻书效果
//    UIModalTransitionStyleCrossDissolve 渐变
    present.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
//    模态 一个视图控制器
    [self presentViewController:present animated:YES completion:nil];
    
    
    
}
// 注意:init loadView viewDidLoad 只执行一次
// 下述方法会执行多次
// 视图将要出现时
- (void)viewWillAppear:(BOOL)animated{
    [super viewWillAppear:animated];
}
// 视图已经出现时
- (void)viewDidAppear:(BOOL)animated{
    [super viewDidAppear:animated];
}
// 视图将要消失时
- (void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
}
// 视图已经消失时
- (void)viewDidDisappear:(BOOL)animated{
    [super viewDidDisappear:animated];
}
// 懒加载
//- (UIView *)subView{
//    if (_subView == nil) {
//        _subView =[UIView new];
//    }
//    return _subView;
//}

// 接收到内存警告时,执行的方法
- (void)didReceiveMemoryWarning {
//    从父类继承来的方法中有内存警告的打印
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
//    释放部分内存资源
//    把未显示在屏幕上的资源置空
}

@end
